﻿using Shop.Core.Share;
using Shop.Model.Dto.Admin.JurUser;
using Shop.Model.View.Admin.JurUser;

namespace Shop.IServices.Admin;

public interface IJurUserService: IAppService
{
    /// <summary>
    /// 添加用户
    /// </summary>
    /// <param name="dto"></param>
    /// <returns></returns>
    Task<AppResult> AddUser(UserAddDto dto);

    /// <summary>
    /// 用户列表
    /// </summary>
    /// <param name="dto"></param>
    /// <returns></returns>
    Task<AppResult<PageModel<SysUserInforVo>>> GetUserList(SysUserPageSearchDto dto);

    /// <summary>
    /// 修改用户信息
    /// </summary>
    /// <param name="dto"></param>
    /// <returns></returns>
    Task<AppResult> Update(UserModifyDto dto);

    /// <summary>
    /// 修改密码
    /// </summary>
    /// <param name="uId"></param>
    /// <param name="inputValue"></param>
    /// <returns></returns>
    Task<AppResult> ChangePassWord(long uId, string inputValue);

    /// <summary>
    /// 获取用户的菜单权限列表
    /// </summary>
    /// <param name="uId"></param>
    /// <returns></returns>
    Task<AppResult<List<MenuListVo>>> GetUserMenu(long uId);
}